package com.xydtech.ecard.config.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xydtech.common.annotation.Excel;
import com.xydtech.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;
import java.util.List;

/**
 * 电子名片业务填报类型配置对象 ecard_busi_report_config
 *
 * @author yuzhiguo
 * @date 2024-09-25 上午10:01
 */
public class EcardBusiReportConfig extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 业务唯一标识 */
    @Excel(name = "业务唯一标识")
    private String busiCode;

    /** 业务名称 */
    @Excel(name = "业务名称")
    private String busiName;

    /** 业务填报分类，1, 个人类，2：绑卡类，3：对公类，4：其他业务 */
    @Excel(name = "业务填报分类", dictType = "ecard_business_reporting_sort")
    private Integer busiType;

    /** 是否多类积分，T：是，F否 */
    @Excel(name = "是否多类积分", dictType = "common_yes_no")
    private String isDpsOrLoan;

    /** 积分方式，1, 固定积分，2：比例提成 */
    @Excel(name = "积分方式", dictType = "ecard_business_integral_way")
    private Integer integrationWay;

    /** 积分/比例 */
    @Excel(name = "积分/比例")
    private Float integrationNums;

    /** 创建人ID */
    private Long creatorId;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:MM:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:MM:ss")
    private Date creationTime;

    /** 创建人机构id */
    private Long deptId;

    /** 状态0停用,1启用 */
    @Excel(name = "状态", dictType = "sys_sts")
    private Integer state;

    /** 创建人 */
    private String userName;

    /** 法人机构 */
    @Excel(name = "法人机构")
    private String deptName;

    /** 是否重复勾选，T：是，F否 */
    @Excel(name = "是否重复勾选", dictType = "common_yes_no")
    private String isMore;

    /**
     * 积分规则明细信息
     */
    private List<EcardBusiConfigList> busiConfigLists;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public String getBusiCode() {
        return busiCode;
    }

    public void setBusiCode(String busiCode) {
        this.busiCode = busiCode;
    }

    public void setBusiName(String busiName)
    {
        this.busiName = busiName;
    }

    public String getBusiName()
    {
        return busiName;
    }
    public void setBusiType(Integer busiType)
    {
        this.busiType = busiType;
    }

    public Integer getBusiType()
    {
        return busiType;
    }

    public String getIsDpsOrLoan() {
        return isDpsOrLoan;
    }

    public void setIsDpsOrLoan(String isDpsOrLoan) {
        this.isDpsOrLoan = isDpsOrLoan;
    }

    public void setIntegrationWay(Integer integrationWay)
    {
        this.integrationWay = integrationWay;
    }

    public Integer getIntegrationWay()
    {
        return integrationWay;
    }
    public void setIntegrationNums(Float integrationNums)
    {
        this.integrationNums = integrationNums;
    }

    public Float getIntegrationNums()
    {
        return integrationNums;
    }
    public void setCreatorId(Long creatorId)
    {
        this.creatorId = creatorId;
    }

    public Long getCreatorId()
    {
        return creatorId;
    }
    public void setCreationTime(Date creationTime)
    {
        this.creationTime = creationTime;
    }

    public Date getCreationTime()
    {
        return creationTime;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setState(Integer state)
    {
        this.state = state;
    }

    public Integer getState()
    {
        return state;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getIsMore() {
        return isMore;
    }

    public void setIsMore(String isMore) {
        this.isMore = isMore;
    }

    public List<EcardBusiConfigList> getBusiConfigLists() {
        return busiConfigLists;
    }

    public void setBusiConfigLists(List<EcardBusiConfigList> busiConfigLists) {
        this.busiConfigLists = busiConfigLists;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("busiCode", getBusiCode())
                .append("busiName", getBusiName())
                .append("busiType", getBusiType())
                .append("isDpsOrLoan", getIsDpsOrLoan())
                .append("integrationWay", getIntegrationWay())
                .append("integrationNums", getIntegrationNums())
                .append("creatorId", getCreatorId())
                .append("creationTime", getCreationTime())
                .append("deptId", getDeptId())
                .append("state", getState())
                .append("remark", getRemark())
                .append("userName", getUserName())
                .append("deptName", getDeptName())
                .append("isMore", getIsMore())
                .append("busiConfigLists", getBusiConfigLists())
                .toString();
    }
}
